﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using ProyectoAlmacen.Persistencia;
using ProyectoAlmacen.Models;
using ProyectoAlmacen.Persistencia.NH;

namespace ProyectoAlmacen.Negocio
{
    public class ProveedorServiceImpl : IProveedorService
    {
        #region Dependencias

        IProveedorDAO proveedorDAO = new ProveedorDAO();

        #endregion

        #region Operaciones del Negocio

        public Proveedor CrearProveedor(int idProveedor, string RucDni, string NombreRazon, int Estado, int idUsuario)
        {
            Proveedor proveedorACrear = new Proveedor();
            proveedorACrear.idProveedor = idProveedor;
            proveedorACrear.RucDni = RucDni;
            proveedorACrear.NombreRazon = NombreRazon;
            proveedorACrear.Estado = Estado;
            proveedorACrear.idUsuario = idUsuario;
            return proveedorDAO.Crear(proveedorACrear);

        }

        public Proveedor EditarProveedor(int idProveedor, string RucDni, string NombreRazon, int Estado, int idUsuario)
        {
            Proveedor proveedorAEditar = new Proveedor();
            proveedorAEditar.idProveedor = idProveedor;
            proveedorAEditar.RucDni = RucDni;
            proveedorAEditar.NombreRazon = NombreRazon;
            proveedorAEditar.Estado = Estado;
            proveedorAEditar.idUsuario = idUsuario;

            return proveedorDAO.Modificar(proveedorAEditar);

        }


        #endregion

        #region Métodos de soporte para entidad proveedor
        public Proveedor ObtenerProveedor(int codigo)
        {

            return proveedorDAO.Obtener(codigo);

        }

        public ICollection<Proveedor> ListarProveedor()
        {


            return proveedorDAO.ListarTodos();

        }
        #endregion
    }
}